/*
 * FileName:       app_sync_usertask.h
 * Author:         Kingsea  Version: v1.0  Date: 2019-5-16
 * Description:    
 * History:        
 *     <author>   	<version>    	<time>    	<desc>
 *     Kingsea   	v1.0    	2019-5-16    
 */
#ifndef APP_SYNC_USERTASK_H__
#define APP_SYNC_USERTASK_H__
#ifdef __cplusplus
extern "C"{
#endif 

typedef struct {
	uint32_t (*gpio_port_read)(void);
	uint32_t (*gpio_pin_read)(uint32_t pin_number);
	void (*gpio_pin_set)(uint32_t pin_number);
	void (*gpio_pin_clear)(uint32_t pin_number);
	void (*gpio_pin_toggle)(uint32_t pin_number);
	void (*gpio_cfg_output)(uint32_t pin_number);
	void (*gpio_cfg_input)(uint32_t pin_number, int32_t pull_config/*0:float,1:PL,3:PH*/);
} GPIO_OP_FP_ST;

void SY_AppCommand_Exec(char *sz_cmd);
bool SY_Register_gpioIF(uint32_t port_number, const GPIO_OP_FP_ST * pfn_IF);

#ifdef __cplusplus
}
#endif 
#endif /* APP_SYNC_USERTASK_H__ */ 

